TOOL.Category		= "(WarMelons)"
TOOL.Name			= "#Base Prop"
TOOL.Command		= nil
TOOL.ConfigName		= ""
include('shared.lua')
TOOL.ClientConVar[ "welded" ] = "1"
TOOL.ClientConVar[ "teamnumber" ] = "1"
TOOL.ClientConVar[ "gravity" ] = "0"
TOOL.ClientConVar[ "model" ] = "models/props_c17/concrete_barrier001a.mdl"
TOOL.ClientConVar[ "health" ] = "100"

if (CLIENT) then
	language.Add( "Tool_baseprops_name", "Base Props" )
	language.Add( "Tool_baseprops_desc", "Creates breakable props." )
	language.Add( "Tool_baseprops_0", "Left-click to spawn a defensive prop. Right-click to repair a prop." )
	language.Add( "Undone_baseprops", "Undone NRG Relay" )
end

function TOOL:LeftClick (trace)
if ( SERVER ) then
	local Pos = trace.HitPos
	local Ang = trace.HitNormal
	local entz = ents.FindByClass("lap_spawnpoint");
	local entz2 = ents.FindByClass("lap_nrgrelay");
	local entz3 = ents.FindByClass("lap_outpost");
	local ply = self:GetOwner()
	local relay = 0
	local spawnpoint = 0
	local buildradius = server_settings.Int( "WM_BuildRadius", 750 )
	local cteam = 0
	if ply:GetNetworkedInt("melonteam") ~= 0 then
	cteam = ply:GetNetworkedInt("melonteam")
	else
	cteam = self:GetClientNumber("teamnumber")
	end
	if buildradius != 0 then
	for k, v in pairs(entz) do
	local dist = v:GetPos():Distance(Pos);
		if (v.Team == cteam && dist <= buildradius) then
		spawnpoint = 1
		end
	end
	 for k, v in pairs(entz2) do
	 local dist2 = v:GetPos():Distance(Pos);
		if (v.Team == cteam && dist2 <= 2080) then
		relay = 1
		end
  	end
	 for k, v in pairs(entz3) do
	 local dist2 = v:GetPos():Distance(Pos);
		if (v.Team == cteam && dist2 <= 1000) then
		relay = 1
		end
  	end
	else
	spawnpoint = 1
	end
	local nrgsup = ply:GetNetworkedInt( "nrg" )
	local propcost = server_settings.Int( "WM_Propcost", 3 )
	local cost = math.floor(self:GetClientNumber("health")* propcost)
	if self:GetClientNumber("gravity") == 0 then
	cost = cost * 3
	end
if (trace.Hit && !trace.HitNoDraw && nrgsup >= cost) then
	if ( relay == 1 || spawnpoint == 1 ) then
	local t = self:GetClientNumber("teamnumber")
	local eang = ply:EyeAngles()
	ply:SetNetworkedInt( "nrg" , nrgsup - cost)
	melon = ents.Create ("melon_baseprop");
	melon:SetPos (trace.HitPos + trace.HitNormal);
	melon:SetAngles (Angle(0,eang.yaw,0));
	melon:GetTable().Team = cteam;
	melon:GetTable().model = self:GetClientInfo("model");
	melon:GetTable().Grav = self:GetClientNumber("gravity") == 0;
	melon:GetTable().mass = self:GetClientNumber("health") * (1 / server_settings.Int( "WM_healthtomass", 2))
		if (t == 1) then
		melon:SetColor (255, 0, 0, 255);
		end
		if (t == 2) then
		melon:SetColor (0, 0, 255, 255);
		end
		if (t == 3) then
		melon:SetColor (0, 255, 0, 255);
		end
		if (t == 4) then
		melon:SetColor (255, 255, 0, 255);
		end
		if (t == 5) then
		melon:SetColor (255, 0, 255, 255);
		end
		if (t == 6) then
		melon:SetColor (0, 255, 255, 255);
		end
	melon:Spawn();
	melon:Activate();
	if (self:GetClientNumber("gravity") == 0) then melon:GetPhysicsObject():EnableGravity(false) end
	if (self:GetClientNumber("welded") == 1) then upright = constraint.Weld (melon, trace.Entity, 0, trace.PhysicsBone, 0, true) end
	trace.Entity:DeleteOnRemove(melon);
	undo.Create("relay");
    undo.AddEntity (melon);
	if (self:GetClientNumber("welded") == 1) then undo.AddEntity (upright) end
    undo.SetPlayer (self:GetOwner());
	undo.Finish();
	local message = "Your NRG:" .. ply:GetNetworkedInt( "nrg" ) .. " Cost: " .. cost
	ply:PrintMessage(HUD_PRINTTALK, message)
	return true;
	else
	ply:PrintMessage(HUD_PRINTTALK, "Too far from spawn point or another relay")
	end
	else 
	return false end
	local message = "Your NRG:" .. ply:GetNetworkedInt( "nrg" ) .. " Cost: " .. cost
	ply:PrintMessage(HUD_PRINTTALK, message)
end

end


function TOOL:RightClick (trace)
if (SERVER) then
	local Pos = trace.HitPos
	local Ang = trace.HitNormal
	local entz = ents.FindByClass("lap_spawnpoint");
	local entz2 = ents.FindByClass("lap_nrgrelay");
	local entz3 = ents.FindByClass("lap_outpost");
	local ply = self:GetOwner()
	local relay = 0
	local spawnpoint = 0
	local buildradius = server_settings.Int( "WM_BuildRadius", 750 )
	local cteam = self:GetClientNumber("teamnumber")
	for k, v in pairs(entz) do
	local dist = v:GetPos():Distance(Pos);
		if (v.Team == cteam && dist <= buildradius) then
		spawnpoint = 1
		end
	end
	for k, v in pairs(entz2) do
	local dist2 = v:GetPos():Distance(Pos);
		if (v.Team == cteam && dist2 <= 2080) then
		relay = 1
		end
	end
	for k, v in pairs(entz3) do
	local dist2 = v:GetPos():Distance(Pos);
		if (v.Team == cteam && dist2 <= 1000) then
		relay = 1
		end
	end
	local nrgsup = ply:GetNetworkedInt( "nrg" )
	local propcost = server_settings.Int( "WM_Propcost", 2 )
	local cost = math.floor(self:GetClientNumber("health")*propcost)
if (trace.Hit && trace.Entity:IsValid() && trace.Entity:GetClass() == "melon_baseprop") then
   if (nrgsup >= cost) then
	if ( relay == 1 || spawnpoint == 1 ) then
	ply:SetNetworkedInt( "nrg" , nrgsup - cost)
	trace.Entity:GetTable().maxhealth = self:GetClientNumber("health")
	trace.Entity:GetTable().health = self:GetClientNumber("health")
	ply:PrintMessage(HUD_PRINTTALK, "Health Updated")
	return true
	else
	ply:PrintMessage(HUD_PRINTTALK, "Too far from spawn point or another relay")
	end
   else
   local message = "Your NRG:" .. ply:GetNetworkedInt( "nrg" ) .. " Cost: " .. cost
   ply:PrintMessage(HUD_PRINTTALK, message)
   return false end
end
end	
end

function TOOL.BuildCPanel (CPanel)
	CPanel:AddControl ("Header", { Text="#Tool_baseprops_name", Description="#Tool_baseprops_desc" })
	CPanel:AddControl( "PropSelect", { Label = "Model", ConVar = "baseprops_model", Category = "Baseprops", Models = list.Get( "BasePropModels" ) } )
	CPanel:AddControl ("Slider", {
		Label = "Team number",
		Command = "baseprops_teamnumber",
		Type = "Integer",
		Min = "1",
		Max = "6"
	} )
	CPanel:AddControl ("Slider", {
		Label = "Health",
		Command = "baseprops_health",
		Type = "Integer",
		Min = "50",
		Max = "1000"
	} )
	CPanel:AddControl( "Checkbox", {
		Label = "Weld",
		Description = "Uncheck box and baseprops will not be attached to what you shoot at",
		Command = "baseprops_welded"
	} )
	CPanel:AddControl( "Checkbox", {
		Label = "Gravity",
		Description = "Uncheck box and the baseprop will not have gravity (3-5x cost)",
		Command = "baseprops_gravity"
	} )
end

function TOOL:Think()
model = self:GetClientInfo("model")	
     if (!self.GhostEntity || !self.GhostEntity:IsValid() || self.GhostEntity:GetModel() != model) then
         self:MakeGhostEntity( model, Vector(0,0,0), Angle(0,0,0) )
     end
    
     self:UpdateGhostEnt( self.GhostEntity, self:GetOwner() )
 end
  
function TOOL:UpdateGhostEnt( ent, player )
  
     if ( !ent ) then return end
     if ( !ent:IsValid() ) then return end
  
     local tr    = utilx.GetPlayerTrace( player, player:GetCursorAimVector() )
     local trace     = util.TraceLine( tr )
     if (!trace.Hit) then return end
    
     if (trace.Entity && trace.Entity:GetClass() == "energy_generator" || trace.Entity:IsPlayer() ) then
    
         ent:SetNoDraw( true )
         return
        
     end
	local ply = self:GetOwner()
     	local eang = ply:EyeAngles()
     ent:SetAngles( Angle(0,eang.yaw,0) )
    
     local min = ent:OBBMins()
     ent:SetPos( trace.HitPos + trace.HitNormal * 2 )
    
     ent:SetNoDraw( false )
    
end 
list.Set( "BasePropModels", "models/props_c17/fence03a.mdl", {} );
list.Set( "BasePropModels", "models/props_building_details/storefront_template001a_bars.mdl", {} );
list.Set( "BasePropModels", "models/props_c17/fence01a.mdl", {} );
list.Set( "BasePropModels", "models/props_c17/concrete_barrier001a.mdl", {} );
list.Set( "BasePropModels", "models/props_c17/concrete_barrier001a.mdl", {} );
list.Set( "BasePropModels", "models/props_lab/BlastDoor001c.mdl", {} );
list.Set( "BasePropModels", "models/props_lab/BlastDoor001a.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_plate1.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_plate1x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_plate2x4.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_plate2x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_plate4x4.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_plate1_tri.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_plate1x2_tri.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_plate2x2_tri.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_plate2x4_tri.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_tube.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_tubex2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_wire1x1.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_wire1x1x1.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_wire1x1x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_wire1x1x2b.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_wire1x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_wire1x2b.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_wire1x2x2b.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_wire2x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_wire2x2b.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/metal_wire2x2x2b.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/glass/glass_plate1x1.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/glass/glass_plate1x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/glass/glass_plate2x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/glass/glass_plate2x4.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/glass/glass_plate4x4.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/windows/window1x1.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/windows/window1x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/windows/window2x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/windows/window2x4.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/windows/window4x4.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_boardx1.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_boardx2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_boardx4.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_panel1x1.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_panel1x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_panel2x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_panel2x4.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_panel4x4.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_wire1x1.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_wire1x1x1.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_wire1x1x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_wire1x1x2b.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_wire1x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_wire1x2b.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_wire1x2x2b.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_wire2x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_wire2x2b.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/wood/wood_wire2x2x2b.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate1x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate1x2.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate1x3.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate1x4.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate1x5.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate1x6.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate1x7.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate1x8.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate2x2.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate2x3.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate2x4.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate2x5.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate2x6.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate2x7.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate2x8.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate3x3.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate3x4.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate3x5.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate3x6.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate3x7.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate3x8.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate4x4.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate4x5.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate4x6.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate4x7.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate4x8.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate5x5.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate5x6.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate5x7.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate5x8.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate6x6.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate6x7.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate6x8.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate7x7.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate7x8.mdl", {} );
list.Set( "BasePropModels", "models/hunter/plates/plate8x8.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube025x025x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube025x05x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube025x075x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube025x1x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube025x125x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube025x150x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube025x2x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube025x3x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube025x4x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube025x5x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube025x6x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube025x7x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube025x8x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x05x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x075x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x1x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x2x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x3x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x4x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x5x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x6x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x7x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x8x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x075x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x1x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x2x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x3x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x4x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x6x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x8x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x1x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x2x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x3x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x4x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x5x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x6x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x7x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x8x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x2x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x4x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x6x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x8x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube3x3x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube3x4x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube3x6x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube3x8x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x4x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x6x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x8x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube6x6x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube8x8x025.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x05x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x105x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x1x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x2x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x3x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x4x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x5x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x6x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x7x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube05x8x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x1x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x2x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x4x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x6x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x8x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x2x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x4x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x6x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x8x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube3x3x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x4x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x6x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x8x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube6x6x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube6x8x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube8x8x05.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x075x075.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x1x075.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x2x075.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x3x075.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x4x075.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x5x075.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x6x075.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x7x075.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x8x075.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x1x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x2x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube075x3x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x1x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x2x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x3x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x4x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x6x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube1x8x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x1x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x2x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x4x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x6x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x8x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x4x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x6x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x8x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube6x6x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube6x8x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube8x8x1.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube2x2x2.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x4x2.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x6x2.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube6x6x2.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube6x8x2.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube8x8x2.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x4x4.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x6x4.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube8x8x2.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube4x6x6.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube6x6x6.mdl", {} );
list.Set( "BasePropModels", "models/hunter/blocks/cube8x8x8.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_angle_90.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_angle_180.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_angle_360.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_panel1x1.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_panel1x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_panel1x3.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_panel1x4.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_panel1x8.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_panel2x2.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_panel2x3.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_panel2x4.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_panel2x8.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_panel3x3.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_panel4x4.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_panel4x8.mdl", {} );
list.Set( "BasePropModels", "models/props_phx/construct/plastic/plastic_panel8x8.mdl", {} );
list.Set( "BasePropModels", "models/props_c17/FurnitureBed001a.mdl", {} );